home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text.html;
-
- import javax.swing.DefaultButtonModel;
- import javax.swing.DefaultComboBoxModel;
- import javax.swing.DefaultListModel;
- import javax.swing.JToggleButton;
- import javax.swing.text.MutableAttributeSet;
- import javax.swing.text.PlainDocument;
- import javax.swing.text.StyleConstants;
- import javax.swing.text.html.HTML.Attribute;
- import javax.swing.text.html.HTML.Tag;
- import javax.swing.text.html.HTMLDocument.HTMLReader;
-
- public class HTMLDocument$HTMLReader$FormAction extends HTMLDocument.HTMLReader.SpecialAction {
- // $FF: synthetic field
- private final HTMLDocument.HTMLReader this$1;
- Object selectModel;
- int optionCount;
-
- public HTMLDocument$HTMLReader$FormAction(HTMLDocument.HTMLReader var1) {
- super(var1);
- this.this$1 = var1;
- }
-
- public void end(HTML.Tag var1) {
- if (var1 == Tag.OPTION) {
- this.this$1.option = null;
- } else {
- if (var1 == Tag.SELECT) {
- this.selectModel = null;
- this.optionCount = 0;
- } else if (var1 == Tag.TEXTAREA) {
- this.this$1.inTextArea = false;
- this.this$1.textAreaDocument.storeInitialText();
- }
-
- super.end(var1);
- }
-
- }
-
- void setModel(String var1, MutableAttributeSet var2) {
- if (!var1.equals("submit") && !var1.equals("reset") && !var1.equals("image")) {
- if (!var1.equals("text") && !var1.equals("password")) {
- if (var1.equals("checkbox") || var1.equals("radio")) {
- JToggleButton.ToggleButtonModel var3 = new JToggleButton.ToggleButtonModel();
- if (var1.equals("radio")) {
- ((DefaultButtonModel)var3).setGroup(HTMLDocument.access$1(HTMLReader.access$0(this.this$1)));
- }
-
- var2.addAttribute(StyleConstants.ModelAttribute, var3);
- }
- } else {
- var2.addAttribute(StyleConstants.ModelAttribute, new PlainDocument());
- }
- } else {
- var2.addAttribute(StyleConstants.ModelAttribute, new DefaultButtonModel());
- }
-
- }
-
- public void start(HTML.Tag var1, MutableAttributeSet var2) {
- if (var1 == Tag.INPUT) {
- String var3 = (String)var2.getAttribute(Attribute.TYPE);
- if (var3 == null) {
- var3 = "text";
- var2.addAttribute(Attribute.TYPE, "text");
- }
-
- this.setModel(var3, var2);
- } else if (var1 == Tag.TEXTAREA) {
- this.this$1.inTextArea = true;
- this.this$1.textAreaDocument = new TextAreaDocument();
- var2.addAttribute(StyleConstants.ModelAttribute, this.this$1.textAreaDocument);
- } else if (var1 == Tag.SELECT) {
- int var6 = HTML.getIntegerAttributeValue(var2, Attribute.SIZE, 1);
- boolean var4 = (String)var2.getAttribute(Attribute.MULTIPLE) != null;
- if (var6 <= 1 && !var4) {
- this.selectModel = new OptionComboBoxModel();
- } else {
- OptionListModel var5 = new OptionListModel();
- if (var4) {
- var5.setSelectionMode(2);
- }
-
- this.selectModel = var5;
- }
-
- var2.addAttribute(StyleConstants.ModelAttribute, this.selectModel);
- }
-
- if (var1 == Tag.OPTION) {
- this.this$1.option = new Option(var2);
- if (this.selectModel instanceof OptionListModel) {
- OptionListModel var7 = (OptionListModel)this.selectModel;
- ((DefaultListModel)var7).addElement(this.this$1.option);
- if (this.this$1.option.isSelected()) {
- var7.addSelectionInterval(this.optionCount, this.optionCount);
- var7.setInitialSelection(this.optionCount);
- }
- } else if (this.selectModel instanceof OptionComboBoxModel) {
- OptionComboBoxModel var8 = (OptionComboBoxModel)this.selectModel;
- ((DefaultComboBoxModel)var8).addElement(this.this$1.option);
- if (this.this$1.option.isSelected()) {
- ((DefaultComboBoxModel)var8).setSelectedItem(this.this$1.option);
- var8.setInitialSelection(this.this$1.option);
- }
- }
-
- ++this.optionCount;
- } else {
- super.start(var1, var2);
- }
-
- }
- }
-